package com.atguigu.schedule.DAO;

import com.atguigu.schedule.pojo.SysUser;

import java.sql.Connection;
import java.util.List;

/**
 * 接口用于规范针对 sys_user 表的常用操作
 */
public interface SysUserDAO {
    /**
     * 把Customer对象添加到 sys_user 数据表
     *
     * @param conn
     * @param user
     * @return
     */
    public int insert(Connection conn, SysUser user);

    /**
     * 删除 sys_user 数据表中指定id的数据
     * @param conn
     * @param id
     */
    public void deleteById(Connection conn, int id);

    /**
     * 修改 sys_user 数据表中的指定数据为内存对象
     * @param conn
     * @param user
     */
    public void update(Connection conn, SysUser user);

    /**
     * 根据指定id查询 sys_user 数据表中的数据
     * @param conn
     * @param id
     */
    public SysUser getUserById(Connection conn, int id);

    public List<SysUser> getUsers(Connection conn);

    public long getUserCount(Connection conn);

    // ...根据项目需求自定义

    public long getUserCountWithName(Connection conn, String name);

    public SysUser getUserByName(Connection conn, String name);
}
